/*
 * Conexão com o banco de dados SQL
 */
package br.inf.acesso.bancodedados;

import br.inf.acesso.regradenegocios.bancodedados.Conexao;
import br.inf.acesso.regradenegocios.bancodedados.ArquivoConexao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;

/**
 * @author Douglas Giordano
 * @since 28/04/2013
 */
public class ConexaoSQLServer {
    ArquivoConexao arqConexao;
    Conexao conexao;
    Connection con = null;
    Statement smt;
    ResultSet rs;

    public ConexaoSQLServer(){
        conexao = new Conexao();
        arqConexao = new ArquivoConexao("C:\\nQuestorEmp\\Conexao", "ConexaoQEmpresarial.txt");
        conexao = arqConexao.buscaConexao();
    }
    
    private Connection conectar() {
        try {
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            con = DriverManager.getConnection(conexao.getUrlSQLServer(), conexao.getUsuario(), conexao.getSenha());
        } catch (ClassNotFoundException erro) {
            JOptionPane.showMessageDialog(null, erro);
        } catch (SQLException erro) {
            JOptionPane.showMessageDialog(null, erro);
        }
        return con;
    }

    public void desconectar() {
        try {
            con.close();
            smt.close();
            rs.close();
        } catch (SQLException erro) {
            System.out.println("Ocorreu um erro " + erro);
        }
    }

    public ResultSet select(String script) {
        try {
            conectar();
            smt = con.createStatement();
            rs = smt.executeQuery(script);

        } catch (SQLException erro) {
            System.out.println(erro);
        }
        return rs;
    }
}
